#ifndef APPMAINWINDOW_H
#define APPMAINWINDOW_H

#include <QMainWindow>
#include <QAction>
#include "GLSLsyntaxhighlighter.h"
class QPlainTextEdit;
class ShaderRenderWidget;
class AppMainWindow : public QMainWindow
{
    Q_OBJECT
public:
    explicit AppMainWindow(QWidget *parent = nullptr);
    ~AppMainWindow();
signals:
protected:
    bool eventFilter(QObject *watched, QEvent *event);
protected slots:
    void toggleFullScreen(bool);
    void toggleShowEditor(bool);
    void openScript();
private:
    QAction* actionFile;
    QAction* actionOpenFile;
    QAction* actionExit;
    QAction* actionFullScreen;
    QAction* actionToggleEditor;
    QAction* actionExample1;
    QAction* actionExample2;
    QAction* actionExample3;

    QMenuBar* menuBar;
    QMenu* menuFile;
    QMenu* menuShow;
    QPlainTextEdit* editor;
    ShaderRenderWidget* shaderRender;
    GLSLSyntaxHighlighter * highlighter;
    void setupMenu();
};

#endif // APPMAINWINDOW_H
